package com.eascs.p2p.common.service;

import com.eascs.app.dao.PageResult;
import com.eascs.p2p.common.entity.DatadicEntity;
import com.eascs.p2p.common.entity.DatadicItemEntity;
import com.eascs.p2p.common.vo.DatadicVO;
import com.eascs.p2p.common.vo.ModelResult;

public interface IDatadicService {

	/**
	 * @Title: pageFindDatadic
	 * @Description: 分页查询数据字典表
	 * @author 张庆奇
	 * @param vo
	 * @return
	 * @return ModelResult<PageResult<Object[]>>
	 * @throws
	 * @date 2016年8月5日 下午2:03:51
	 */
	public  ModelResult<PageResult<Object[]>> pageFindDatadic(DatadicVO vo);
	
	/**
	 * @Title: queryDatadicItemByID
	 * @Description: 根据id，查询字典详情信息
	 * @author 张庆奇
	 * @param vo
	 * @return
	 * @return ModelResult<PageResult<Object[]>>
	 * @throws
	 * @date 2016年8月5日 下午2:06:30
	 */
	ModelResult<PageResult<Object[]>> queryDatadicItemByID(DatadicVO vo);
	
	/**
	 * @Title: addDatadic
	 * @Description: 添加字典表信息
	 * @author 张庆奇
	 * @param entity
	 * @return
	 * @return ModelResult<String>
	 * @throws
	 * @date 2016年8月5日 下午2:09:14
	 */
	public ModelResult<String> addDatadic(DatadicEntity entity);
	
	/**
	 * @Title: updateDatadic
	 * @Description: 修改字典表信息
	 * @author 张庆奇
	 * @param entity
	 * @return
	 * @return ModelResult<Boolean>
	 * @throws
	 * @date 2016年8月5日 下午2:09:45
	 */
	public ModelResult<Boolean> updateDatadic(DatadicEntity entity);
	
	/**
	 * @Title: deleteDatadic
	 * @Description: 删除字典表信息
	 * @author 张庆奇
	 * @param id
	 * @return
	 * @return ModelResult<Boolean>
	 * @throws
	 * @date 2016年8月5日 下午2:10:34
	 */
	public ModelResult<Boolean> deleteDatadic(String id);
	
	/**
	 * @Title: addDatadicItem
	 * @Description:添加字典表详细信息
	 * @author 张庆奇
	 * @param entity
	 * @return
	 * @return ModelResult<String>
	 * @throws
	 * @date 2016年8月5日 下午2:11:51
	 */
	public ModelResult<String> addDatadicItem(DatadicItemEntity entity);
	
	
	/**
	 * @Title: updateDatadicItem
	 * @Description: 修改字典表详细信息
	 * @author 张庆奇
	 * @param entity
	 * @return
	 * @return ModelResult<Boolean>
	 * @throws
	 * @date 2016年8月5日 下午2:12:19
	 */
	public ModelResult<Boolean> updateDatadicItem(DatadicItemEntity entity);
	

	/**
	 * @Title: deleteDatadicItem
	 * @Description: 删除字典表详细信息
	 * @author 张庆奇
	 * @param id
	 * @return
	 * @return ModelResult<Boolean>
	 * @throws
	 * @date 2016年8月5日 下午2:12:43
	 */
	public ModelResult<Boolean> deleteDatadicItem(String id);
	
	/**
	 * @Title: findDatadicByID
	 * @Description: 根据id查询字典表信息
	 * @author 张庆奇
	 * @param id
	 * @return
	 * @return ModelResult<DatadicEntity>
	 * @throws
	 * @date 2016年8月5日 下午2:57:50
	 */
	public ModelResult<DatadicEntity> findDatadicByID(String id);
	/**
	 * @Title: findDatadicItemByID
	 * @Description: 根据id，查询字典表详情信息
	 * @author 张庆奇
	 * @param id
	 * @return
	 * @return ModelResult<DatadicItemEntity> 
	 * @throws
	 * @date 2016年8月5日 下午2:58:09
	 */
	public ModelResult<DatadicItemEntity> findDatadicItemByID(String id);
	
    /**
     * @Title: isExistDatadic
     * @Description: 根据字典code，查询是否已经存在相同code字典信息
     * @author 张庆奇
     * @param ddCode
     * @return
     * @return ModelResult<Integer>
     * @throws
     * @date 2016年8月8日 上午10:29:23
     */
    public ModelResult<Integer> isExistDatadic(String ddCode);
	

	/**
	 * @Title: isExistDatadicItem
	 * @Description: 根据字典id、字典详情code，查询是否已经存在相同code字典详情信息
	 * @author 张庆奇
	 * @param ddNo
	 * @param itemCode
	 * @return
	 * @return ModelResult<Integer>
	 * @throws
	 * @date 2016年8月8日 上午10:29:26
	 */
	public ModelResult<Integer> isExistDatadicItem(String ddNo, String itemCode);
	
	
}
